/**
 * Licensee: DuKe TeAm
 * License Type: Purchased
 */
package ormsamples;

import org.orm.*;
public class RetrieveAndUpdateMarketFrogData {
	public void retrieveAndUpdateTestData() throws PersistentException {
		PersistentTransaction t = orm.MarketFrogPersistentManager.instance().getSession().beginTransaction();
		try {
			orm.DAOFactory lDAOFactory = orm.DAOFactory.getDAOFactory();
			orm.dao.UsuarioDAO lormUsuarioDAO = lDAOFactory.getUsuarioDAO();
			orm.Usuario lormUsuario = lormUsuarioDAO.loadUsuarioByQuery(null, null);
			// Update the properties of the persistent object
			lormUsuarioDAO.save(lormUsuario);
			orm.dao.EmpresaDAO lormEmpresaDAO = lDAOFactory.getEmpresaDAO();
			orm.Empresa lormEmpresa = lormEmpresaDAO.loadEmpresaByQuery(null, null);
			// Update the properties of the persistent object
			lormEmpresaDAO.save(lormEmpresa);
			orm.dao.TiendaDAO lormTiendaDAO = lDAOFactory.getTiendaDAO();
			orm.Tienda lormTienda = lormTiendaDAO.loadTiendaByQuery(null, null);
			// Update the properties of the persistent object
			lormTiendaDAO.save(lormTienda);
			orm.dao.ProductoDAO lormProductoDAO = lDAOFactory.getProductoDAO();
			orm.Producto lormProducto = lormProductoDAO.loadProductoByQuery(null, null);
			// Update the properties of the persistent object
			lormProductoDAO.save(lormProducto);
			orm.dao.SucursalDAO lormSucursalDAO = lDAOFactory.getSucursalDAO();
			orm.Sucursal lormSucursal = lormSucursalDAO.loadSucursalByQuery(null, null);
			// Update the properties of the persistent object
			lormSucursalDAO.save(lormSucursal);
			orm.dao.TipoProductoDAO lormTipoProductoDAO = lDAOFactory.getTipoProductoDAO();
			orm.TipoProducto lormTipoProducto = lormTipoProductoDAO.loadTipoProductoByQuery(null, null);
			// Update the properties of the persistent object
			lormTipoProductoDAO.save(lormTipoProducto);
			t.commit();
		}
		catch (Exception e) {
			t.rollback();
		}
		
	}
	
	public void retrieveByCriteria() throws PersistentException {
		System.out.println("Retrieving Usuario by UsuarioCriteria");
		orm.UsuarioCriteria usuarioCriteria = new orm.UsuarioCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//usuarioCriteria.idUser.eq();
		System.out.println(usuarioCriteria.uniqueUsuario());
		
		System.out.println("Retrieving Empresa by EmpresaCriteria");
		orm.EmpresaCriteria empresaCriteria = new orm.EmpresaCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//empresaCriteria.idEmpresa.eq();
		System.out.println(empresaCriteria.uniqueEmpresa());
		
		System.out.println("Retrieving Tienda by TiendaCriteria");
		orm.TiendaCriteria tiendaCriteria = new orm.TiendaCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//tiendaCriteria.idTienda.eq();
		System.out.println(tiendaCriteria.uniqueTienda());
		
		System.out.println("Retrieving Producto by ProductoCriteria");
		orm.ProductoCriteria productoCriteria = new orm.ProductoCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//productoCriteria.idPdto.eq();
		System.out.println(productoCriteria.uniqueProducto());
		
		System.out.println("Retrieving Sucursal by SucursalCriteria");
		orm.SucursalCriteria sucursalCriteria = new orm.SucursalCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//sucursalCriteria.idSucursal.eq();
		System.out.println(sucursalCriteria.uniqueSucursal());
		
		System.out.println("Retrieving TipoProducto by TipoProductoCriteria");
		orm.TipoProductoCriteria tipoProductoCriteria = new orm.TipoProductoCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//tipoProductoCriteria.idTipo.eq();
		System.out.println(tipoProductoCriteria.uniqueTipoProducto());
		
	}
	
	
	public static void main(String[] args) {
		try {
			RetrieveAndUpdateMarketFrogData retrieveAndUpdateMarketFrogData = new RetrieveAndUpdateMarketFrogData();
			try {
				retrieveAndUpdateMarketFrogData.retrieveAndUpdateTestData();
				//retrieveAndUpdateMarketFrogData.retrieveByCriteria();
			}
			finally {
				orm.MarketFrogPersistentManager.instance().disposePersistentManager();
			}
		}
		catch (Exception e) {
			e.printStackTrace();
		}
	}
}
